package com.qumitech.visualnovel.service.user.constant;

/**
 * @Auther: yilu
 * @Date: 2019/5/8 11:10
 * @Description:
 */
public enum UserContentTypeEnum {
    PhotoHall((byte)1, "照片墙", 30, (byte)1, (byte)2,"photo_hall"),
    ProfileBackgroundImage((byte)2, " 个人背景图片", 0, (byte)1, (byte)2),
    Avatar((byte)3, "头像", 10, (byte)1, (byte)2,"avatar"),
    Signature((byte)4, "签名", 10, (byte)1, (byte)1,"signature"),
    Location((byte)5, "地理位置", 0, (byte)1, (byte)0),
    VoiceRoomBackGroundImage((byte)6, "语音房背景图片", 0, (byte)2, (byte)2,"backend_image"),
    SystemProfileBackgroundImage((byte)7, "系统封面", 0, (byte)0, (byte)0),  //系统封面
    SystemAvatar((byte)8, "系统头像", 0, (byte)0, (byte)0),  //系统头像
    UserName((byte)9, "昵称", 10, (byte)1, (byte)1,"user_name"),
    Sex((byte)10, "性别", 10, (byte)1, (byte)0),
    Birthday((byte)11, "生日", 10, (byte)1, (byte)0),
    Video((byte)12, "视频", 10, (byte)1, (byte)3,"video_content"),
    VoiceRoomFrontImage((byte)13, "语音房封面", 0, (byte)2, (byte)2,"front_image"),
    VoiceRoomName((byte)14, "语音房名称", 0, (byte)2, (byte)1,"room_name"),
    VoiceRoomAnnounce((byte)15, "语音房公告", 0, (byte)2, (byte)1,"announce"),
    Voice((byte)16, "声音", 10, (byte)1, (byte)4,"voice_content"),
    ;

    private Byte contentType;
    private String describe;
    private int score; //资料完善度分值
    private byte category; //类别 0system related  1profile related 2voice room related
    private byte format; //内容格式(方便审核用) 0系统或者非需审核类 1文字类 2图片类 3视频类 4声音类
    private String englishDesc;//英文描述

    UserContentTypeEnum(Byte contentType, String describe, int score, byte category, byte format) {
        this.contentType = contentType;
        this.describe = describe;
        this.score = score;
        this.category = category;
        this.format = format;
    }

    UserContentTypeEnum(Byte contentType, String describe, int score, byte category, byte format, String englishDesc) {
        this.contentType = contentType;
        this.describe = describe;
        this.score = score;
        this.category = category;
        this.format = format;
        this.englishDesc = englishDesc;
    }

    public String getDescribe() {
        return this.describe;
    }

    public Byte getContentType() {
        return contentType;
    }

    public Integer getScore() {
        return score;
    }

    public byte getCategory() {
        return category;
    }

    public byte getFormat() {
        return format;
    }

    public String getEnglishDesc() {
        return englishDesc;
    }

    public static UserContentTypeEnum getContentEnumByType(Byte contentType){
        for(UserContentTypeEnum contentTypeEnum: values()){
            if(contentTypeEnum.getContentType().equals(contentType)){
                return contentTypeEnum;
            }
        }
        return null;
    }

}
